package com.cskaoyan.javase.oop1._5this;

/**
 * this关键字在大多数时候是不需要写出来的
 * 因为它是一个隐含的传参
 * 但是在需要区分同名成员变量和形参局部变量时,是必须写出this的
 *
 * 一般在给成员变量赋值的方法中,是很常见this的
 *
 * @since 11:15
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo2 {
    public static void main(String[] args) {
        Student s = new Student();
        // 成员方法赋值,既然能调用方法了,对象已经new结束了,所以它是创建对象之后的赋值手段
        s.setAge(18);
        System.out.println(s.age);
    }
}

class Student {
    // 成员变量的显式赋值,是在new对象过程中的赋值手段
    int age = 20;

    public void setAge(int age) {
        // 用局部变量age给成员变量age赋值
        /*
            this.age指的是当前对象的成员变量age
            右边的age由于就近原则,它是形参局部变量,外界传入的参数age
         */
        this.age = age;
    }
}